#ifndef INC_LCD1602_H_
#define INC_LCD1602_H_

typedef unsigned char  u8;

#include "main.h"

#define LCD1602_RS_L  	HAL_GPIO_WritePin(LCD_RS_GPIO_Port, LCD_RS_Pin, GPIO_PIN_RESET)
#define LCD1602_RS_H    HAL_GPIO_WritePin(LCD_RS_GPIO_Port, LCD_RS_Pin, GPIO_PIN_SET)

#define LCD1602_RW_L		HAL_GPIO_WritePin(LCD_RW_GPIO_Port, LCD_RW_Pin, GPIO_PIN_RESET)
#define LCD1602_RW_H	  HAL_GPIO_WritePin(LCD_RW_GPIO_Port, LCD_RW_Pin, GPIO_PIN_SET)

#define LCD1602_EN_L  	HAL_GPIO_WritePin(LCD_E_GPIO_Port, LCD_E_Pin, GPIO_PIN_RESET)
#define LCD1602_EN_H		HAL_GPIO_WritePin(LCD_E_GPIO_Port, LCD_E_Pin, GPIO_PIN_SET)

void LCD1602_Init(void);
void LCD1602_Write_Cmd(u8 cmd);
void LCD1602_Write_Dat(u8 data);
void LCD1602_Set_Cursor(u8 x, u8 y);
void LCD1602_ClearScreen(void);
void LCD1602_Show_Str(u8 x, u8 y, u8 *data);
void write_data(u8 data);

#endif /* INC_LCD1602_H_ */
